package com.inspur.edp.common.expr.spi;


import com.inspur.edp.common.expr.ast.ASTContext;
import com.inspur.edp.common.expr.ast.CompileUnitParser;
import com.inspur.edp.common.expr.ast.CompileUnitVisitor;
import com.inspur.edp.common.expr.visitor.VisitResult;


/**
 * @author lizhaorui
 * @description TODO
 * @date 2024/9/12 10:49
 */
public interface ArrayAccessVisitor {

    String getKind();

    VisitResult visitGetter(CompileUnitVisitor visitor, ASTContext context, CompileUnitParser.ExpressContext objectExpr, CompileUnitParser.ExpressContext indexExpress);

    VisitResult visitSetter(CompileUnitVisitor visitor, ASTContext context, CompileUnitParser.ExpressContext objectExpr, CompileUnitParser.ExpressContext indexExpress, CompileUnitParser.ExpressContext valueExpress);

}
